package com.example.dmallOrder.common.wxsp;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum OutstationGroupWxControlIdEnum {
    // Text Controls
    STORE_NUMBER("Text-1722493776082", "门店号"),
    STORE_NAME("Text-1722493789337", "门店名称"),
    STORE_APPLICATION_NUMBER("Text-1722908065538", "门店申请单号"),
    SUPPLIER_NAME("Text-1722581922868", "客商名称"),
    VENDOR_NUMBER("Text-1722908140683", "客商编号"),
    ARRIVAL_ADDRESS("Text-1722494502338", "到货地址"),
    INVOICE_TITLE("Text-1722588688813", "开票抬头"),
    REMARKS("Text-1723084797772", "门店备注"),
    PAYTYPE("Text-1724033813896", "支付方式"),


    // Number Controls
    TOTAL_GROSS_MARGIN("Number-1722588664829", "合计毛利率"),
    GROSS_MARGIN("Number-1722588611358", "毛利率"),

    // Selector Controls
    GOODS_HAS_CATE("Selector-1722494216729", "商品分类(包含)"),
    DELIVERY_METHOD("Selector-1722494374561", "送货方式"),
    TIMELY_DELIVERY("Selector-1722494637169", "是否准时送货"),
    CONFIRM_INVOICE_CONTENT("Selector-1722494739225", "是否确认开票内容"),


    /* ======================================== Selector Controls Options =========================================== */
    // 商品分类(包含)
    GENERAL_BY_GOODS_HAS_CATE("option-1722494216729", "综合", GOODS_HAS_CATE),
    FRESH_FOOD_BY_GOODS_HAS_CATE("option-1722494216730", "鲜食", GOODS_HAS_CATE),
    GENERAL_AND_FRESH_FOOD_BY_GOODS_HAS_CATE("option-1722494247786", "综合和鲜食", GOODS_HAS_CATE),
    // 送货方式
    LOGISTICS_DISTRIBUTION("option-1722494374561", "物流配送", DELIVERY_METHOD),
    STORE_DELIVERY("option-1722494374562", "门店自送", DELIVERY_METHOD),
    CUSTOMER_PICKUP("option-1722494399313", "顾客自提", DELIVERY_METHOD),
    FACTORY_DIRECT_DELIVERY("option-1722560229774", "厂家直送", DELIVERY_METHOD),
    // 是否准时送货
    DELIVERY_YES("option-1722494637169", "是", TIMELY_DELIVERY),
    DELIVERY_NO("option-1722494637170", "否", TIMELY_DELIVERY),
    // 是否确认开票内容
    INVOICE_YES("option-1722494739225", "是", CONFIRM_INVOICE_CONTENT),
    INVOICE_NO("option-1722494739226", "否", CONFIRM_INVOICE_CONTENT),
    /* ======================================== Selector Controls Options =========================================== */


    // Money Controls
    TOTAL_PURCHASE_AMOUNT("Money-1722494143340", "团购总金额"),
    FREIGHT_AMOUNT("Money-1722494296379", "运费金额"),


    // Date Controls
    EXPECTED_ARRIVAL_TIME("Date-1722494325124", "预期到货时间"),

    // Table Controls
    DETAILS("Table-1722494814020", "明细"),
    DETAILS_PRODUCT_CODE("Text-1722494861059", "商品六位码"),
    DETAILS_PRODUCT_NAME("Text-1722494877561", "商品名称"),
    DETAILS_PRODUCT_CATEGORY_NAME("Text-1722494885169", "商品分类名称"),
    DETAILS_PRODUCT_CATEGORY("Selector-1722494936308", "商品分类归属"),
    PRODUCT_CATEGORY_FRESH_FOOD("option-1722494936308", "鲜食", DETAILS_PRODUCT_CATEGORY),
    PRODUCT_CATEGORY_COMPREHENSIVE("option-1722494936309", "综合", DETAILS_PRODUCT_CATEGORY),
    DETAILS_SPECIFICATION("Text-1722581986740", "规格"),
    DETAILS_QUANTITY("Number-1722588627966", "数量"),
    DETAILS_PURCHASE_PRICE("Money-1722495031693", "商品进价"),
    DETAILS_SELLING_PRICE("Money-1722495061597", "商品售价"),
    DETAILS_GROUP_BUYING_PRICE("Money-1722582109509", "团购价"),
    DETAILS_SUPPLIER_SUBSIDY_AMOUNT("Money-1722495077812", "供应商补差金额"),
    DETAILS_GROSS_MARGIN("Number-1722588611358", "毛利率");

    private final String id;

    private final String title;

    private final OutstationGroupWxControlIdEnum parent;

    /**
     * 处理父类字段
     * Constructor for items without a parent
     *
     * @param id    id
     * @param title title
     */
    OutstationGroupWxControlIdEnum(final String id, final String title) {
        this.id = id;
        this.title = title;
        this.parent = null;
    }


}
